ALBに新しいセキュリティポリシーが追加されました (Forward Secrecy / TLS1.2 Only)
はじめに
中山(順)です。
少し前(2018年6月6日)の話になりますが、ALBに新しいセキュリティポリシーが2つ追加されました。
Application Load Balancer Adds New Security Policies Including Policy for Forward Secrecy
どんなポリシー?
ポリシーの内容とポイントは以下の通りです。
ELBSecurityPolicy-FS-2018-06
Forward Secrecyに準拠するための暗号化方式をサポートしています。
AWS CLIで詳細を確認してみましょう。
aws elbv2 describe-ssl-policies \ --names ELBSecurityPolicy-FS-2018-06 \ --output table
結果は以下の通りです。
--------------------------------------------------- | DescribeSSLPolicies | +-------------------------------------------------+ || SslPolicies || |+-----------------------------------------------+| || Name || |+-----------------------------------------------+| || ELBSecurityPolicy-FS-2018-06 || |+-----------------------------------------------+| ||| Ciphers ||| ||+--------------------------------+------------+|| ||| Name | Priority ||| ||+--------------------------------+------------+|| ||| ECDHE-ECDSA-AES128-GCM-SHA256 | 1 ||| ||| ECDHE-RSA-AES128-GCM-SHA256 | 2 ||| ||| ECDHE-ECDSA-AES128-SHA256 | 3 ||| ||| ECDHE-RSA-AES128-SHA256 | 4 ||| ||| ECDHE-ECDSA-AES128-SHA | 5 ||| ||| ECDHE-RSA-AES128-SHA | 6 ||| ||| ECDHE-ECDSA-AES256-GCM-SHA384 | 7 ||| ||| ECDHE-RSA-AES256-GCM-SHA384 | 8 ||| ||| ECDHE-ECDSA-AES256-SHA384 | 9 ||| ||| ECDHE-RSA-AES256-SHA384 | 10 ||| ||| ECDHE-RSA-AES256-SHA | 11 ||| ||| ECDHE-ECDSA-AES256-SHA | 12 ||| ||+--------------------------------+------------+|| ||| SslProtocols ||| ||+---------------------------------------------+|| ||| TLSv1 ||| ||| TLSv1.1 ||| ||| TLSv1.2 ||| ||+---------------------------------------------+||
ELBSecurityPolicy-TLS-1-2-Ext-2018-06
SSLプロトコルとしてTLS1.2のみをサポートするセキュリティポリシーです。
各サービス事業者はTLS1.2以上の利用を推奨しています。 以下の記事はマイクロソフトさんの例です。
[IT 管理者向け] TLS 1.2 への移行を推奨しています
また、いくつかのサービスでも実際にTLS1.2のみのサポートへ移行しています。
Deep Security as a Service環境におけるTLS1.2未満の無効化について
AWS CLIで詳細を確認してみましょう。
aws elbv2 describe-ssl-policies \ --names ELBSecurityPolicy-TLS-1-2-Ext-2018-06 \ --output table
結果は以下の通りです。
--------------------------------------------------- | DescribeSSLPolicies | +-------------------------------------------------+ || SslPolicies || |+-----------------------------------------------+| || Name || |+-----------------------------------------------+| || ELBSecurityPolicy-TLS-1-2-Ext-2018-06 || |+-----------------------------------------------+| ||| Ciphers ||| ||+--------------------------------+------------+|| ||| Name | Priority ||| ||+--------------------------------+------------+|| ||| ECDHE-ECDSA-AES128-GCM-SHA256 | 1 ||| ||| ECDHE-RSA-AES128-GCM-SHA256 | 2 ||| ||| ECDHE-ECDSA-AES128-SHA256 | 3 ||| ||| ECDHE-RSA-AES128-SHA256 | 4 ||| ||| ECDHE-ECDSA-AES128-SHA | 5 ||| ||| ECDHE-RSA-AES128-SHA | 6 ||| ||| ECDHE-ECDSA-AES256-GCM-SHA384 | 7 ||| ||| ECDHE-RSA-AES256-GCM-SHA384 | 8 ||| ||| ECDHE-ECDSA-AES256-SHA384 | 9 ||| ||| ECDHE-RSA-AES256-SHA384 | 10 ||| ||| ECDHE-RSA-AES256-SHA | 11 ||| ||| ECDHE-ECDSA-AES256-SHA | 12 ||| ||| AES128-GCM-SHA256 | 13 ||| ||| AES128-SHA256 | 14 ||| ||| AES128-SHA | 15 ||| ||| AES256-GCM-SHA384 | 16 ||| ||| AES256-SHA256 | 17 ||| ||| AES256-SHA | 18 ||| ||+--------------------------------+------------+|| ||| SslProtocols ||| ||+---------------------------------------------+|| ||| TLSv1.2 ||| ||+---------------------------------------------+||
いきなり適用しちゃっていいの?
ちょっと落ち着いてください。
クライアントによってはこれらの暗号化方式/プロトコルをサポートしていない場合があります。 詳細は以下のブログをご覧ください。
実際にアクセスしているクライアントは?
CloudFrontやALBを利用している場合、アクセスログにUserAgentが記録されます。
ALB:アクセスログのエントリ
CloudFront:ログファイル形式
分析はAthenaがお手軽でしょう。
Application Load Balancer ログのクエリ
弊社ブログでも紹介されております。
まとめ
時間と共に従来の暗号化方式やプロトコルは脆弱なものになってしまいます。 やむを得ない事情で古いクライアントをサポートしなければならないケースはあると思いますが、 少しずつでもあるべき姿へ近づけていきましょう。
現場からは以上です。